***KMEANS AMBITION TYPES***

*Load data*
clear
use "Data\sample1_new_extended.dta"

forvalues i=81(1)85{
	
*9th grade
gen temp_g=wage_growth_ambition if final_educ==1109`i'
egen temp_g_2=max(temp_g)
replace wage_growth_ambition=temp_g_2 if (final_educ==1007 | final_educ==1008 | final_educ==1023 | final_educ==1123 | final_educ==1009 | final_educ==1022) & grad_region==`i' 
drop temp_g temp_g_2

gen temp_w=wage_start_mean_ambition if final_educ==1109`i'
egen temp_w_2=max(temp_w)
replace wage_start_mean_ambition=temp_w_2 if (final_educ==1007 | final_educ==1008 | final_educ==1023 | final_educ==1123 | final_educ==1009 | final_educ==1022) & grad_region==`i' 
drop temp_w temp_w_2

replace final_educ=1107`i' if final_educ==1107 & grad_region==`i'
replace final_educ=1008`i' if final_educ==1008 & grad_region==`i'
replace final_educ=1023`i' if final_educ==1023 & grad_region==`i'
replace final_educ=1123`i' if final_educ==1123 & grad_region==`i'
replace final_educ=1009`i' if final_educ==1009 & grad_region==`i'
replace final_educ=1022`i' if final_educ==1022 & grad_region==`i'

*10th grade
gen temp_g=wage_growth_ambition if final_educ==1110`i'
egen temp_g_2=max(temp_g)
replace wage_growth_ambition=temp_g_2 if final_educ==1010 & grad_region==`i' 
drop temp_g temp_g_2

gen temp_w=wage_start_mean_ambition if final_educ==1110`i'
egen temp_w_2=max(temp_w)
replace wage_start_mean_ambition=temp_w_2 if final_educ==1010 & grad_region==`i' 
drop temp_w temp_w_2

replace final_educ=1010`i' if final_educ==1010 & grad_region==`i'

}

*3.g 
gen temp_g=wage_growth_ambition if final_educ==1198
egen temp_g_2=max(temp_g)
replace wage_growth_ambition=temp_g_2 if final_educ==1097
drop temp_g temp_g_2

gen temp_w=wage_start_mean_ambition if final_educ==1198
egen temp_w_2=max(temp_w)
replace wage_start_mean_ambition=temp_w_2 if final_educ==1097
drop temp_w temp_w_2


**kmeans**
cluster kmeans wage_start_mean_ambition wage_growth_ambition, k(3) name(ambition_type_k_3) s(kr(1234))
tab ambition_type_k_3
tabstat wage_start_mean_ambition wage_growth_ambition, by(ambition_type_k_3)
tab ambition_type_k_3 educ_eika, row

cluster kmeans wage_start_mean_ambition wage_growth_ambition, k(4) name(ambition_type_k_4) s(kr(1234))
tab ambition_type_k_4
tabstat wage_start_mean_ambition wage_growth_ambition, by(ambition_type_k_4)
tab ambition_type_k_4 educ_eika, row

cluster kmeans wage_start_mean_ambition wage_growth_ambition, k(5) name(ambition_type_k_5) s(kr(1234))
tab ambition_type_k_5
tabstat wage_start_mean_ambition wage_growth_ambition, by(ambition_type_k_5)
tab ambition_type_k_5 educ_eika, row

*standardize variables
sum wage_start_mean_ambition
sca the_mean_s=r(mean)
sca the_sd_s=r(sd)
gen wage_start_mean_ambition_s=(wage_start_mean_ambition-the_mean_s)/the_sd_s
sum wage_start_mean_ambition_s

sum wage_growth_ambition
sca the_mean_g=r(mean)
sca the_sd_g=r(sd)
gen wage_growth_ambition_s=(wage_growth_ambition-the_mean_g)/the_sd_g
sum wage_growth_ambition_s

cluster kmeans wage_start_mean_ambition_s wage_growth_ambition_s, k(3) name(ambition_type_k_3_s) s(kr(1234))
tab ambition_type_k_3_s
tabstat wage_start_mean_ambition_s wage_growth_ambition_s, by(ambition_type_k_3_s)
tab ambition_type_k_3_s fined, row

cluster kmeans wage_start_mean_ambition_s wage_growth_ambition_s, k(4) name(ambition_type_k_4_s) s(kr(1234))
tab ambition_type_k_4_s
tabstat wage_start_mean_ambition_s wage_growth_ambition_s, by(ambition_type_k_4_s)
tab ambition_type_k_4_s fined, row

cluster kmeans wage_start_mean_ambition_s wage_growth_ambition_s, k(5) name(ambition_type_k_5_s) s(kr(1234))
tab ambition_type_k_5_s
tabstat wage_start_mean_ambition_s wage_growth_ambition_s, by(ambition_type_k_5_s)
tab ambition_type_k_5_s fined, row


*Define marital status
gen relationship=0
replace relationship=1 if civst=="G" | (civst!="G" & faelle_nr!="")

gen married=0
replace married=1 if civst=="G"

gen cohab=0
replace cohab=1 if relationship==1 & married==0

*Make couple ID based on the PNR of the man
gen couple_id="."
replace couple_id=pnr if koen=="1" & relationship==1
replace couple_id=aegte_nr if koen=="2" & married==1
replace couple_id=faelle_nr if koen=="2" & cohab==1
sort couple_id aar

*Keep only couples where we observe both partners
gen temp2=koen if relationship==1
destring temp2, replace
by couple_id aar: egen temp3=mean(temp2)
keep if (temp3>1 & temp3<2 & relationship==1) | relationship==0
drop temp2 temp3

//generate partners' age

by couple_id aar, sort: gen age_male = age if koen=="1"
by couple_id aar: gen age_female = age if koen=="2"
by couple_id aar: egen maxage = max(age_male)
by couple_id aar: replace age_male = maxage
drop maxage
by couple_id aar: egen maxage = max(age_female)
by couple_id aar: replace age_female = maxage
drop maxage

*Age restriction
keep if ((age_male>=19 & age_male<=60) & (age_female>=19 & age_female<=60) & relationship==1) | (age>=19 & age<=60 & relationship==0)
*zero deleted

*Only couples
keep if relationship==1


drop individual 

sort pnr aar

**SAVE**
save "Data\kmeans ambition types extended.dta", replace


